Internet search engines are designed to locate desired information from among the vast amount of information contained across the Internet. Users describe the information they are looking for by entering queries containing search terms. The search engine matches the search terms against an index of Web pages using a variety of relevance calculations with the objective of identifying those Web pages that are most likely related to the information sought by the users. The search engine then returns a ranked list of hyperlinks to these Web pages, with the links determined to be most relevant nearer the top of the list.
In order to use a search engine, each user must figure out for himself how to construct and enter a query that will cause the search engine to return a results list containing links to sources that will most likely provide the information the user is seeking. Traditionally, searching was done by search experts who were skilled at crafting elaborate and precise Boolean queries. This is a skill that is still in common use at places such as news organizations, libraries and the United States Patent Office. However, on the Internet, most users are unfamiliar with such techniques, and usually enter no more than a few words, with no particular logical expression, hoping the search engine will provide the information they are seeking.
Most search engines today have as an objective of their user interaction design to provide relevant search results without requiring precise queries, by factoring in other evidence about relevance. For example, search engines may analyze the hyperlinks between Web pages, or look for documents that contain terms that are semantically similar to the terms in the query, or demonstrate a high level of co-occurrence with terms in the query over the corpus of documents.
Results returned by search engines can also be manipulated. Web site owners can add content or meta data or hyperlinks from other Web sites to their Web site, so that their Web pages are listed near the top of results lists, even though the Web pages do not contain information that is highly related to a user's query. This practice is often referred to as Search Engine Optimization (“SEO”).
Because search techniques have limits and because search engines cannot divine the intent of users in conducting searches, users are often unsatisfied or frustrated with the results returned by search engines. If the user happens to construct a query that yields satisfactory results, there is no mechanism by which he can share that query with other users who wish to do the same or a similar search. Likewise, there is no mechanism for users to review input from others as they attempt to construct queries that will cause the search engine to return the desired results. Search engines do not allow users to learn from one another, or to take advantage of successful searches conducted by one another.
The objective of search engines is not simply to provide lists of links to documents, but ultimately to provide access to the most relevant information to users in response to their queries. Conventional search engines provide primarily a ranked list of hyperlinks to Web pages that are determined by computer algorithms to be relevant. Users looking for answers to questions about a subject area must follow those hyperlinks and search around on those Web sites for the information they are seeking. Search engines do not return information about the subject, or direct answers to questions in addition to links to Web sites. When, for example, a user enters a query for “Calgary Alberta” the results page does not contain information such as: Location: Lat: 51′ 1″, Long: 114′ 1″ and Population: 922,315, in addition to a link to a “City of Calgary” Web page along with the conventional results list.
Additionally, search engines have a difficult time disambiguating between different concepts that can be described by the same query term. For example the query “star wars” may refer both to the movie “Star Wars” and to the Strategic Defense Initiative. Attempts have been made to develop algorithms such as clustering or semantic analysis in order to determine which concept a user is searching for when he enters a query, but so far with limited success. Often users have knowledge of the concept to which their query pertains. It would be advantageous if those users were able to enter this relevant information to help the search engine disambiguate between that concept and other related concepts. This information would also help other users to understand the concept and assist in the process of searching for information about the concept.